--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
tests/frontend/NomadNetworkBrowser.test.js v4.7.0-rc.2 (a20c7e1c) Text, 8.18 KB
Tff7b72import Tb4b4b4{ Te6edf3mount Tb4b4b4} Tff7b72from Ta5d6ff"@vue/test-utils"Tb4b4b4;
Tff7b72import Tb4b4b4{ Te6edf3describeTb4b4b4, Te6edf3itTb4b4b4, Te6edf3expectTb4b4b4, Te6edf3viTb4b4b4, Te6edf3beforeEach Tb4b4b4} Tff7b72from Ta5d6ff"vitest"Tb4b4b4;
Te6edf3viTb4b4b4.Te6edf3mockTb4b4b4(Ta5d6ff"@/components/nomadnetwork/NomadNetworkPage.vue"Tb4b4b4, Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4(Tb4b4b4{
Tff7b72defaultTff7b72: Tb4b4b4{
Te6edf3nameTff7b72: Ta5d6ff"NomadNetworkPage"Tb4b4b4,
Te6edf3templateTff7b72: Ta5d6ff'<div class="nnp-stub" :data-hash="destinationHash"></div>'Tb4b4b4,
Te6edf3propsTff7b72: Tb4b4b4{
Te6edf3destinationHashTff7b72: Tb4b4b4{ Te6edf3typeTff7b72: Tffa657StringTb4b4b4, Tff7b72defaultTff7b72: Ta5d6ff"" Tb4b4b4}Tb4b4b4,
Te6edf3initialPathTff7b72: Tb4b4b4{ Te6edf3typeTff7b72: Tffa657StringTb4b4b4, Tff7b72defaultTff7b72: Tff7b72null Tb4b4b4}Tb4b4b4,
Te6edf3embeddedTff7b72: Tb4b4b4{ Te6edf3typeTff7b72: Tffa657BooleanTb4b4b4, Tff7b72defaultTff7b72: Tff7b72false Tb4b4b4}Tb4b4b4,
Tb4b4b4}Tb4b4b4,
Te6edf3emitsTff7b72: Tb4b4b4[Ta5d6ff"navigate"Tb4b4b4, Ta5d6ff"close-tab"Tb4b4b4]Tb4b4b4,
Tb4b4b4}Tb4b4b4,
Tb4b4b4}Tb4b4b4)Tb4b4b4)Tb4b4b4;
Tff7b72import Te6edf3NomadNetworkBrowser Tff7b72from Ta5d6ff"@/components/nomadnetwork/NomadNetworkBrowser.vue"Tb4b4b4;
Tff7b72const Te6edf3MaterialDesignIconStub Tff7b72= Tb4b4b4{
Te6edf3nameTff7b72: Ta5d6ff"MaterialDesignIcon"Tb4b4b4,
Te6edf3templateTff7b72: Ta5d6ff'<div class="mdi-stub" :data-icon-name="iconName"></div>'Tb4b4b4,
Te6edf3propsTff7b72: Tb4b4b4[Ta5d6ff"iconName"Tb4b4b4]Tb4b4b4,
Tb4b4b4}Tb4b4b4;
Te6edf3describeTb4b4b4(Ta5d6ff"NomadNetworkBrowser.vue"Tb4b4b4, Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72let Te6edf3routerReplaceTb4b4b4;
Tff7b72const Te6edf3mountBrowser Tff7b72= Tb4b4b4(Te6edf3props Tff7b72= Tb4b4b4{Tb4b4b4}Tb4b4b4, Te6edf3route Tff7b72= Tb4b4b4{ Te6edf3paramsTff7b72: Tb4b4b4{Tb4b4b4}Tb4b4b4, Te6edf3queryTff7b72: Tb4b4b4{Tb4b4b4} Tb4b4b4}Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Te6edf3routerReplace Tff7b72= Te6edf3viTb4b4b4.Te6edf3fnTb4b4b4(Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tffa657PromiseTb4b4b4.Te6edf3resolveTb4b4b4(Tb4b4b4)Tb4b4b4)Tb4b4b4;
Tff7b72return Te6edf3mountTb4b4b4(Te6edf3NomadNetworkBrowserTb4b4b4, Tb4b4b4{
Te6edf3propsTb4b4b4,
Tffa657globalTff7b72: Tb4b4b4{
Te6edf3mocksTff7b72: Tb4b4b4{
Te6edf3$tTff7b72: Tb4b4b4(Te6edf3keyTb4b4b4) Tb4b4b4=> Te6edf3keyTb4b4b4,
Te6edf3$routeTff7b72: Te6edf3routeTb4b4b4,
Te6edf3$routerTff7b72: Tb4b4b4{ Te6edf3replaceTff7b72: Te6edf3routerReplace Tb4b4b4}Tb4b4b4,
Tb4b4b4}Tb4b4b4,
Te6edf3stubsTff7b72: Tb4b4b4{
Te6edf3MaterialDesignIconTff7b72: Te6edf3MaterialDesignIconStubTb4b4b4,
Tb4b4b4}Tb4b4b4,
Tb4b4b4}Tb4b4b4,
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4;
Te6edf3beforeEachTb4b4b4(Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Te6edf3localStorageTb4b4b4.Te6edf3clearTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3routerReplace Tff7b72= Tff7b72undefinedTb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3itTb4b4b4(Ta5d6ff"creates a single tab on mount"Tb4b4b4, Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72const Te6edf3wrapper Tff7b72= Te6edf3mountBrowserTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4)Tb4b4b4.Te6edf3toHaveLengthTb4b4b4(T79c0ff1Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3activeTabIdTb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4[T79c0ff0Tb4b4b4]Tb4b4b4.Te6edf3idTb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3itTb4b4b4(Ta5d6ff"seeds the first tab from the route destination hash and path"Tb4b4b4, Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72const Te6edf3dest Tff7b72= Ta5d6ff"a"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3wrapper Tff7b72= Te6edf3mountBrowserTb4b4b4(Tb4b4b4{Tb4b4b4}Tb4b4b4, Tb4b4b4{ Te6edf3paramsTff7b72: Tb4b4b4{ Te6edf3destinationHashTff7b72: Te6edf3dest Tb4b4b4}Tb4b4b4, Te6edf3queryTff7b72: Tb4b4b4{ Te6edf3pathTff7b72: Ta5d6ff"/page/info.mu" Tb4b4b4} Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4[T79c0ff0Tb4b4b4]Tb4b4b4.Te6edf3destinationHashTb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Te6edf3destTb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4[T79c0ff0Tb4b4b4]Tb4b4b4.Te6edf3initialPathTb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Ta5d6ff"/page/info.mu"Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3itTb4b4b4(Ta5d6ff"addTab creates and activates a new empty tab"Tb4b4b4, Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72const Te6edf3wrapper Tff7b72= Te6edf3mountBrowserTb4b4b4(Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3before Tff7b72= Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4.Te6edf3lengthTb4b4b4;
Tff7b72const Te6edf3id Tff7b72= Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3addTabTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4)Tb4b4b4.Te6edf3toHaveLengthTb4b4b4(Te6edf3before Tff7b72+ T79c0ff1Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3activeTabIdTb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Te6edf3idTb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4.Te6edf3findTb4b4b4(Tb4b4b4(Te6edf3tTb4b4b4) Tb4b4b4=> Te6edf3tTb4b4b4.Te6edf3id Tff7b72=== Te6edf3idTb4b4b4)Tb4b4b4.Te6edf3destinationHashTb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Ta5d6ff""Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3itTb4b4b4(Ta5d6ff"onTabNavigate updates destination hash and title for the tab"Tb4b4b4, Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72const Te6edf3wrapper Tff7b72= Te6edf3mountBrowserTb4b4b4(Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3tab Tff7b72= Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4[T79c0ff0Tb4b4b4]Tb4b4b4;
Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3onTabNavigateTb4b4b4(Te6edf3tabTb4b4b4.Te6edf3idTb4b4b4, Tb4b4b4{
Te6edf3destinationHashTff7b72: Ta5d6ff"b"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4)Tb4b4b4,
Te6edf3pagePathTff7b72: Ta5d6ff"/page/index.mu"Tb4b4b4,
Te6edf3titleTff7b72: Ta5d6ff"My Node"Tb4b4b4,
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3tabTb4b4b4.Te6edf3destinationHashTb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Ta5d6ff"b"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4)Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3tabTb4b4b4.Te6edf3titleTb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Ta5d6ff"My Node"Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3itTb4b4b4(Ta5d6ff"tabTitle falls back to the new tab label and short hash"Tb4b4b4, Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72const Te6edf3wrapper Tff7b72= Te6edf3mountBrowserTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabTitleTb4b4b4(Tb4b4b4{ Te6edf3destinationHashTff7b72: Ta5d6ff""Tb4b4b4, Te6edf3titleTff7b72: Tff7b72null Tb4b4b4}Tb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Ta5d6ff"nomadnet.new_tab"Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabTitleTb4b4b4(Tb4b4b4{ Te6edf3destinationHashTff7b72: Ta5d6ff"c"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4)Tb4b4b4, Te6edf3titleTff7b72: Tff7b72null Tb4b4b4}Tb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Ta5d6ff"cccccccccccc"Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabTitleTb4b4b4(Tb4b4b4{ Te6edf3destinationHashTff7b72: Ta5d6ff"c"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4)Tb4b4b4, Te6edf3titleTff7b72: Ta5d6ff"Named" Tb4b4b4}Tb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Ta5d6ff"Named"Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3itTb4b4b4(Ta5d6ff"closeTab activates a neighbour and never leaves zero tabs"Tb4b4b4, Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72const Te6edf3wrapper Tff7b72= Te6edf3mountBrowserTb4b4b4(Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3first Tff7b72= Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4[T79c0ff0Tb4b4b4]Tb4b4b4.Te6edf3idTb4b4b4;
Tff7b72const Te6edf3second Tff7b72= Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3addTabTb4b4b4(Ta5d6ff"d"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4)Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4)Tb4b4b4.Te6edf3toHaveLengthTb4b4b4(T79c0ff2Tb4b4b4)Tb4b4b4;
Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3closeTabTb4b4b4(Te6edf3secondTb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4)Tb4b4b4.Te6edf3toHaveLengthTb4b4b4(T79c0ff1Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3activeTabIdTb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Te6edf3firstTb4b4b4)Tb4b4b4;
Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3closeTabTb4b4b4(Te6edf3firstTb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4)Tb4b4b4.Te6edf3toHaveLengthTb4b4b4(T79c0ff1Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3activeTabIdTb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4[T79c0ff0Tb4b4b4]Tb4b4b4.Te6edf3idTb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3itTb4b4b4(Ta5d6ff"shows the tab strip only on wide viewports"Tb4b4b4, Tff7b72async Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72const Te6edf3wrapper Tff7b72= Te6edf3mountBrowserTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3isWideViewport Tff7b72= Tff7b72falseTb4b4b4;
Tff7b72await Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3$nextTickTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3findTb4b4b4(Ta5d6ff'[role="tablist"]'Tb4b4b4)Tb4b4b4.Te6edf3existsTb4b4b4(Tb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Tff7b72falseTb4b4b4)Tb4b4b4;
Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3isWideViewport Tff7b72= Tff7b72trueTb4b4b4;
Tff7b72await Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3$nextTickTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3findTb4b4b4(Ta5d6ff'[role="tablist"]'Tb4b4b4)Tb4b4b4.Te6edf3existsTb4b4b4(Tb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Tff7b72trueTb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3itTb4b4b4(Ta5d6ff"selectTab syncs the route to the active tab destination hash"Tb4b4b4, Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72const Te6edf3wrapper Tff7b72= Te6edf3mountBrowserTb4b4b4(Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3second Tff7b72= Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3addTabTb4b4b4(Ta5d6ff"e"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4)Tb4b4b4)Tb4b4b4;
Te6edf3routerReplaceTb4b4b4.Te6edf3mockClearTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3activeTabId Tff7b72= Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4[T79c0ff0Tb4b4b4]Tb4b4b4.Te6edf3idTb4b4b4;
Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3selectTabTb4b4b4(Te6edf3secondTb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3activeTabIdTb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Te6edf3secondTb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3routerReplaceTb4b4b4)Tb4b4b4.Te6edf3toHaveBeenCalledTb4b4b4(Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3arg Tff7b72= Te6edf3routerReplaceTb4b4b4.Te6edf3mockTb4b4b4.Te6edf3callsTb4b4b4[Te6edf3routerReplaceTb4b4b4.Te6edf3mockTb4b4b4.Te6edf3callsTb4b4b4.Te6edf3length Tff7b72- T79c0ff1Tb4b4b4]Tb4b4b4[T79c0ff0Tb4b4b4]Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3argTb4b4b4.Te6edf3nameTb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Ta5d6ff"nomadnetwork"Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3argTb4b4b4.Te6edf3paramsTb4b4b4.Te6edf3destinationHashTb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Ta5d6ff"e"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4)Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3itTb4b4b4(Ta5d6ff"hides the tab strip when tabs are disabled in config"Tb4b4b4, Tff7b72async Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72const Te6edf3wrapper Tff7b72= Te6edf3mountBrowserTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3isWideViewport Tff7b72= Tff7b72trueTb4b4b4;
Tff7b72await Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3$nextTickTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3findTb4b4b4(Ta5d6ff'[role="tablist"]'Tb4b4b4)Tb4b4b4.Te6edf3existsTb4b4b4(Tb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Tff7b72trueTb4b4b4)Tb4b4b4;
Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3GlobalStateTb4b4b4.Te6edf3configTb4b4b4.Te6edf3nomad_tabs_enabled Tff7b72= Tff7b72falseTb4b4b4;
Tff7b72await Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3$nextTickTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsEnabledTb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Tff7b72falseTb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3findTb4b4b4(Ta5d6ff'[role="tablist"]'Tb4b4b4)Tb4b4b4.Te6edf3existsTb4b4b4(Tb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Tff7b72falseTb4b4b4)Tb4b4b4;
Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3GlobalStateTb4b4b4.Te6edf3configTb4b4b4.Te6edf3nomad_tabs_enabled Tff7b72= Tff7b72trueTb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3itTb4b4b4(Ta5d6ff"persists tab layout to localStorage when tabs change"Tb4b4b4, Tff7b72async Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72const Te6edf3wrapper Tff7b72= Te6edf3mountBrowserTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3onTabNavigateTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4[T79c0ff0Tb4b4b4]Tb4b4b4.Te6edf3idTb4b4b4, Tb4b4b4{
Te6edf3destinationHashTff7b72: Ta5d6ff"a"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4)Tb4b4b4,
Te6edf3pagePathTff7b72: Ta5d6ff"/page/index.mu"Tb4b4b4,
Te6edf3titleTff7b72: Ta5d6ff"Node A"Tb4b4b4,
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3addTabTb4b4b4(Ta5d6ff"b"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4)Tb4b4b4, Ta5d6ff"/page/b.mu"Tb4b4b4, Ta5d6ff"Node B"Tb4b4b4)Tb4b4b4;
Tff7b72await Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3$nextTickTb4b4b4(Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3saved Tff7b72= Tffa657JSONTb4b4b4.Te6edf3parseTb4b4b4(Te6edf3localStorageTb4b4b4.Te6edf3getItemTb4b4b4(Ta5d6ff"meshchatx.nomadnet.tabs"Tb4b4b4)Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3savedTb4b4b4.Te6edf3tabsTb4b4b4)Tb4b4b4.Te6edf3toHaveLengthTb4b4b4(T79c0ff2Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3savedTb4b4b4.Te6edf3tabsTb4b4b4[T79c0ff0Tb4b4b4]Tb4b4b4)Tb4b4b4.Te6edf3toMatchObjectTb4b4b4(Tb4b4b4{
Te6edf3destinationHashTff7b72: Ta5d6ff"a"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4)Tb4b4b4,
Te6edf3pathTff7b72: Ta5d6ff"/page/index.mu"Tb4b4b4,
Te6edf3titleTff7b72: Ta5d6ff"Node A"Tb4b4b4,
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3savedTb4b4b4.Te6edf3activeIndexTb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(T79c0ff1Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3itTb4b4b4(Ta5d6ff"restores persisted tabs on mount instead of seeding a single tab"Tb4b4b4, Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Te6edf3localStorageTb4b4b4.Te6edf3setItemTb4b4b4(
Ta5d6ff"meshchatx.nomadnet.tabs"Tb4b4b4,
Tffa657JSONTb4b4b4.Te6edf3stringifyTb4b4b4(Tb4b4b4{
Te6edf3tabsTff7b72: Tb4b4b4[
Tb4b4b4{ Te6edf3destinationHashTff7b72: Ta5d6ff"a"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4)Tb4b4b4, Te6edf3pathTff7b72: Ta5d6ff"/page/index.mu"Tb4b4b4, Te6edf3titleTff7b72: Ta5d6ff"Node A" Tb4b4b4}Tb4b4b4,
Tb4b4b4{ Te6edf3destinationHashTff7b72: Ta5d6ff"b"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4)Tb4b4b4, Te6edf3pathTff7b72: Ta5d6ff"/page/b.mu"Tb4b4b4, Te6edf3titleTff7b72: Ta5d6ff"Node B" Tb4b4b4}Tb4b4b4,
Tb4b4b4]Tb4b4b4,
Te6edf3activeIndexTff7b72: T79c0ff1Tb4b4b4,
Tb4b4b4}Tb4b4b4)
Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3wrapper Tff7b72= Te6edf3mountBrowserTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4)Tb4b4b4.Te6edf3toHaveLengthTb4b4b4(T79c0ff2Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4[T79c0ff0Tb4b4b4]Tb4b4b4.Te6edf3destinationHashTb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Ta5d6ff"a"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4)Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4[T79c0ff0Tb4b4b4]Tb4b4b4.Te6edf3initialPathTb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Ta5d6ff"/page/index.mu"Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3activeTabIdTb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4[T79c0ff1Tb4b4b4]Tb4b4b4.Te6edf3idTb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3itTb4b4b4(Ta5d6ff"focuses the matching restored tab when the route targets a saved node"Tb4b4b4, Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Te6edf3localStorageTb4b4b4.Te6edf3setItemTb4b4b4(
Ta5d6ff"meshchatx.nomadnet.tabs"Tb4b4b4,
Tffa657JSONTb4b4b4.Te6edf3stringifyTb4b4b4(Tb4b4b4{
Te6edf3tabsTff7b72: Tb4b4b4[
Tb4b4b4{ Te6edf3destinationHashTff7b72: Ta5d6ff"a"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4)Tb4b4b4, Te6edf3pathTff7b72: Ta5d6ff"/page/index.mu"Tb4b4b4, Te6edf3titleTff7b72: Ta5d6ff"Node A" Tb4b4b4}Tb4b4b4,
Tb4b4b4{ Te6edf3destinationHashTff7b72: Ta5d6ff"b"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4)Tb4b4b4, Te6edf3pathTff7b72: Ta5d6ff"/page/b.mu"Tb4b4b4, Te6edf3titleTff7b72: Ta5d6ff"Node B" Tb4b4b4}Tb4b4b4,
Tb4b4b4]Tb4b4b4,
Te6edf3activeIndexTff7b72: T79c0ff0Tb4b4b4,
Tb4b4b4}Tb4b4b4)
Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3wrapper Tff7b72= Te6edf3mountBrowserTb4b4b4(Tb4b4b4{Tb4b4b4}Tb4b4b4, Tb4b4b4{ Te6edf3paramsTff7b72: Tb4b4b4{ Te6edf3destinationHashTff7b72: Ta5d6ff"b"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4) Tb4b4b4}Tb4b4b4, Te6edf3queryTff7b72: Tb4b4b4{Tb4b4b4} Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3tabsTb4b4b4)Tb4b4b4.Te6edf3toHaveLengthTb4b4b4(T79c0ff2Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3activeTabTb4b4b4.Te6edf3destinationHashTb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Ta5d6ff"b"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4)Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Te6edf3itTb4b4b4(Ta5d6ff"renders one embedded NomadNetworkPage per tab"Tb4b4b4, Tff7b72async Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72const Te6edf3wrapper Tff7b72= Te6edf3mountBrowserTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3addTabTb4b4b4(Ta5d6ff"f"Tb4b4b4.Te6edf3repeatTb4b4b4(T79c0ff32Tb4b4b4)Tb4b4b4)Tb4b4b4;
Tff7b72await Te6edf3wrapperTb4b4b4.Te6edf3vmTb4b4b4.Te6edf3$nextTickTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3findAllComponentsTb4b4b4(Tb4b4b4{ Te6edf3nameTff7b72: Ta5d6ff"NomadNetworkPage" Tb4b4b4}Tb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toHaveLengthTb4b4b4(T79c0ff2Tb4b4b4)Tb4b4b4;
Te6edf3expectTb4b4b4(Te6edf3wrapperTb4b4b4.Te6edf3findComponentTb4b4b4(Tb4b4b4{ Te6edf3nameTff7b72: Ta5d6ff"NomadNetworkPage" Tb4b4b4}Tb4b4b4)Tb4b4b4.Te6edf3propsTb4b4b4(Ta5d6ff"embedded"Tb4b4b4)Tb4b4b4)Tb4b4b4.Te6edf3toBeTb4b4b4(Tff7b72trueTb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────